The present invention relates to a computer peripheral input device used by an operator to control cursor position or the like. More particularly, the invention is directed to an apparatus and method for inputting position, attitude and motion data to a computer in, for example, terms of three-dimensional spatial coordinates over time.
Most computer systems with which humans must interact, include a "cursor" which indicates current position on a computer display. The cursor position may indicate where data may be input, such as the case of textual information, or where one may manipulate an object which is represented graphically by the computer and depicted on a display. Manipulation of the cursor on a computer display may also be used by an operator to select or change modes of computer operation.
Early means of cursor control were centered around the use of position control keys on the computer keyboard. These control keys were later augmented by other devices such as the light pen, graphics tablet, joystick, and the track ball. Other developments utilized a device called a "mouse" to allow an operator to directly manipulate the cursor position by moving a small, hand-held device across a flat surface.
The first embodiment of the mouse detected rotation of a ball which protrudes from the bottom of the device to control cursor position. As the operator moves the mouse on a two dimensional surface, sensors in the mouse detect rotation of the ball along two mutually perpendicular axes. Examples of such devices are illustrated in U.S. Pat. Nos. 3,541,541; 3,835,464; 3,892,963; 3,987,685; and 4,390,873. U.S. Pat. No. 4,409,479 discloses a further development which utilizes optical sensing techniques to detect mouse motion without moving parts.
These mouse devices all detect and convey motion within two dimensions. However, with the increased use of computers in the definition, representation, and manipulation of information in terms of three-dimensional space, attempts have been made to devise techniques that allow for the definition of positional coordinates in three dimensions. Advances of computer graphical display and software technology in the area of three-dimensional representation of information has made desirable the capability of an operator to input and manipulate or control more than merely three-dimensional position information, but also three-dimensional motion and attitude information. This is particularly true in the case of modeling, simulation, and animation of objects that are represented in either two or three-dimensional space.
U.S. Pat. No. 3,898,445, issued to MacLeod et al., relates to a means for determining position of a target in three dimensions by measuring the time it takes for a number of light beams to sweep between reference points and comparing that with the time required for the beams to sweep between the reference points and the target.
U.S. Pat. No. 4,766,423, issued to Ono et al., and U.S. Pat. No. 4,812,829, issued to Ebina et al., disclose display and control devices and methods for controlling a cursor in a three-dimensional space by moving the cursor as if to maneuver it by use of joystick and throttle type devices to alter the direction and velocity of a cursor.
U.S. Pat. No. 4,835,528, issued to Flinchbaugh, illustrates a cursor control system which utilizes movement of a mouse device upon a two-dimensional surface that contains logically defined regions within which movement of the mouse is interpreted by the system to mean movement in three-dimensional space.
None of the three-dimensional input devices noted above has the intuitive simplicity that a mouse has for interacting in two dimensions. A three-dimensional input device disclosed in U.S. Pat. No. 4,787,051 to Olson utilizes inertial acceleration sensors to permit an operator to input three-dimensional spatial position. However, the disclosed device does not consider input of either motion or "orientation", henceforth referred to herein as "attitude".
To determine changes in position within a plane, the Olson system senses translation from a first accelerometer. Rotation is obtained from the difference in translational acceleration sensed by the first accelerometer and a second accelerometer. This technique mandates precision mounting of the accelerometer pair, as well as processing to decouple translation from rotation and to determine both the rotational axis and rate. Thus, the device disclosed by Olson et al. requires extensive processing by the computer which may render the device incompatible with lower end computing devices. Additionally, this technique would require highly sensitive accelerometers to obtain low rotational rates.
In the Olson device, analog integrator circuits are used for the first stage of integration required to obtain displacement from acceleration. These integrator circuits have limits in dynamic range and require periodic resets to zero to eliminate inherent errors of offset and drift. The Olson device also constrains the use of the remote device to a limited range of orientation with respect to the computer in order to permit proper communication. Furthermore, no provision is made in the Olson system to prevent interference from signals originating from nearby input devices which control nearby computer work stations.
Accordingly, one of the objects of the present invention is to provide a new and improved device that overcomes the aforementioned shortcomings of previous computer input techniques.
Additionally, a primary object of the present invention is to provide a means for an operator to input to a computer information which allows the computer to directly ascertain position, motion and attitude of the input device in terms of three-dimensional spatial coordinates.
It is another object of the present invention to provide a new and improved apparatus and method for controlling movement of a cursor, represented on a computer display in terms of three-dimensional spatial coordinates.
It is yet another object of the present invention to provide an apparatus and method for providing input to a computer, position, motion, and attitude with a device which is intuitively simple to operate by the natural motion of a person, for the purpose of conveying a change in position or attitude, in a particular case, or a change in the state of variables, in the general case.